home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 501-525 / disk_501 / addmenu / addmenu.doc < prev    next >
Text File  |  1992-05-06  |  29KB  |  645 lines

  1.         AddMenu V1.50 (25th Apr 1991) by Nic Wilson
  2.         -------------------------------------------
  3.  
  4.                 Written totally in Assembler
  5.                 ----------------------------
  6.                  using Hisoft Devpac Amiga 
  7.                  -------------------------
  8.                   on an Amiga A3000 25mhz
  9.                   -----------------------
  10.  
  11.          Nic Wilson Software
  12.          138d South Street
  13.          Toowoomba Qld 4350
  14.          Australia  
  15.          Ph (076) 358384 Work or FAX
  16.             (076) 358539 After hours
  17.  
  18.          This program has been placed on Shareware for your enjoyment
  19.          You may distribute it freely as long as this document and the 
  20.          program remains unmodified, and accompanies the program.  
  21.          You may modify the script files as examples as long as you 
  22.          FULLY test them before distribution.
  23.  
  24.          If you like the program, a donation would be appreciated,
  25.          and the latest version of this and other programs will be sent
  26.          to you if requested.
  27.  
  28.          FUNCTION
  29.          --------
  30.          Add an infinite number of Menu Items to the Workbench Tools 
  31.          Menu in Kickstart V2.0 using script files.  Updating is 
  32.          possible from the menus, from CLI or from Workbench using
  33.          different script files.  Temporary menu items can also be 
  34.          added that stay in the menu strip after upating to new script.
  35.  
  36.          REQUIREMENTS
  37.          ------------
  38.          Any Amiga running V2.0 of Kickstart and Workbench including
  39.          the A3000. Tested on versions 36.141 to 37.74 Kickstart and
  40.          Workbench 36.77 to 37.33.
  41.  
  42.          HISTORY
  43.          -------
  44.          V1.0   Original release.
  45.          V1.1   Added ability to use different script name/path
  46.          V1.2   Added quit and update options
  47.          V1.3   Added ability to change scripts on update
  48.          V1.31  Optimised and fixed error msg for illegal use
  49.                 under kickstart V1.3. 
  50.                 Fully checked with 'Enforcer' for bugs.
  51.          V1.40  New temporary menus via workbench icon added
  52.                 and ability to update or remove from this icon.
  53.          V1.41  Stopped illegal devices, drawers or non-executables
  54.                 being added to the menu strip.  These will cause
  55.                 workbench screen to flash.
  56.                 Added switch for temporary menus, so you do not have
  57.                 to have the icon around if you do not use them.
  58.                 Added the ability to remove the temporary menus alone.  
  59.                 V1.42   Fixed bug.  If Temporary menus were removed, they would
  60.                 magically reappear when a script was changed.
  61.         V1.50   Fixed bug.  When updating to new script, old script memory 
  62.                 buffers were not being freed.   
  63.                 Added ability for each menu item to have more than one 
  64.                 executable(SEE 'COMMAND STRINGS' or 'EXAMPLE SCRIPT' BELOW).
  65. USAGE
  66. *****
  67.          IMPORTANT
  68.          ---------
  69.          DO NOT USE RUN OR RUNBACK, ADDMENU WILL RETURN THE CLI
  70.          TO YOU AND ALLOW IT TO CLOSE WHEN YOU GIVE AN ENDCLI.
  71.  
  72.          ADDMENU MUST RESIDE IN THE C: DIRECTORY.  IT WILL NOT WORK
  73.          IF IT IS IN ANOTHER DIRECTORY, EVEN IF IF IT HAS BEEN ADDED
  74.          TO THE PATH OR ASSIGNED!  ADDMENU WORKS IN RATHER A SPECIAL
  75.          WAY, IN ORDER TO ALLOW THE CLI WINDOW TO CLOSE AFTER LAUNCH
  76.          IT RELAUNCHES ITSELF AGAIN WITH SPECIAL CODE, THIS IS DONE
  77.          TO OVERCOME ALL THE NORMAL PROBLEMS ASSOCIATED WITH THIS.
  78.          YOU WILL NOTICE THAT SOME PROGRAMS LOSE THE PATH, STACK,
  79.          CURRENT DIRECTORY ETC, THIS IS ESPECIALLY TRUE OF PROGRAMS
  80.          WRITTEN IN C.  ADDMENU DOES NOT SUFFER FROM ANY OF THESE
  81.          PROBLEMS.  POPCLI TYPE PROGRAMS SUFFER BADLY FROM THIS, MY
  82.          AUTOCLI USES THIS SAME CODE AND SUFFERS NO PROBLEM.  IT IS
  83.          PUBLIC DOMAIN SO SEND S.S.A.E. FOR THE LATEST VERSION.  
  84.          
  85.          AddMenu [script] [switch]  
  86.  
  87.          Standard redirection of output is supported. 
  88.  
  89.          EG. Addmenu >nil: [script]  [switch] 
  90.         
  91. [switches]
  92.  
  93.   -q     AddMenu must already be running for this switch to be used.
  94.          This switch allows the currently running AddMenu to be removed. 
  95.          If AddMenu is not found running an error message will result.
  96.          If this switch is used then it must be the only parameter.
  97.          To remove from workbench see 'To Remove Addmenu Completely'
  98.          below.
  99.          
  100.   -t     Do not use temporary menus and do not place the icon on the
  101.          Workbench screen.       
  102.  
  103. [script] 
  104.          This is an optional parameter, and can be used when AddMenu is 
  105.          first launched or when updating.  By default it reads a script  
  106.          created by you, called 'addmenu.script'.  This file is expected 
  107.          to be in the S: directory , but if you wish to supply a
  108.          different path and name you can use the script parameter.  If 
  109.          this parameter is used you must supply the path to the file and 
  110.          its name.  There is an example file that accompanies this file 
  111.          to show you how to create it.  Below is an explanation of the 
  112.          script file.
  113.  
  114. SPECIAL CONDITIONS FOR LOADING
  115. ------------------------------
  116.          Workbench V2.0+ must already be running.  
  117.          LOADWB delay is not enough see below.
  118.          
  119. VERY IMPORTANT!!!!!!!!!!
  120. ------------------------
  121.          If being used from a startup-sequence the the command
  122.          must be placed after the LOADWB command, and a Wait 5 must
  123.          be placed in between them to give workbench time to come on
  124.          line.  The actual time to wait may need to be varied to suit
  125.          your system.  The delay option of LoadWB is not enough.
  126.          68030 machines can try wait times as low as 2.  If you have 
  127.          problems with intermittent gurus on boot then increase this wait.  
  128.          This wait does not have to delay the boot time of your machine.
  129.          if, every program in your startup-sequence that normally outputs
  130.          some sort of message to the window, is sent to NIL:, the initial 
  131.          CLI window will not open.  The first window you will see will be 
  132.          the Workbench window.  The wait will then happen in the background 
  133.          and the menus will be available in a few seconds.
  134.          
  135.          EXAMPLE
  136.                  LoadWb delay cleanup
  137.                  Wait 5
  138.                  AddMenu >nil:
  139.                  
  140. ++++++++++++++++++++++++
  141. S T O P  P R E S S ! ! !
  142. ++++++++++++++++++++++++
  143.     It seems that this wait is not required on the new V37 of V2.0
  144.     It works fine with no wait at all.  just ensure that you lanch
  145.     it after the loadwb command.
  146.                      
  147.  
  148. TEMPORARY MENU ITEMS
  149. ********************
  150.  
  151.          This function will default to on unless the -t switch was 
  152.          used at launch. AddMenu will place a special icon on the 
  153.          workbench window.  If a program is dragged and dumped over 
  154.          this icon, that program will appear at the bottom of the 
  155.          menu strip.  The program itself will not move at all and 
  156.          doing this is quite safe. These temporary menus will survive 
  157.          an update that changes to a different script.  They will 
  158.          continue to appear on the bottom of whatever script you 
  159.          update with. Once added they can be removed without removing 
  160.          AddMenu completely by double clicking on the special icon and
  161.          selecting the 'REMOVE TEMP' gadget from the window.   
  162.          If any illegal device or non-executable file is dumped over
  163.          the icon the screen will flash and a beep sound will be heard, 
  164.          and it will not be added to the menu.
  165.         
  166. ADDMENU's SPECIAL ICON
  167. **********************
  168.          
  169.          This icon does not behave like a normal icon, it is a special
  170.          icon that allows manipulation of AddMenu from the workbench.
  171.          Double clicking the icon will open a window with five gadgets.  
  172.          These gadgets allow AddMenu to be removed, temporary menus 
  173.          removed, updating a script or to cancel the operation.  They 
  174.          are all explained in the relative sections below.  This icon 
  175.          has not been given any specific position on the workbench window.  
  176.          Workbench will choose the best position for the icon, it can 
  177.          of course be dragged to any place you wish.  I may add the abilty
  178.          to snapshot in a future version.
  179.          
  180.  
  181. CANCELLING THE WINDOW
  182. *********************
  183.          If you double clicked the special icon, the window opened, and
  184.          you changed your mind and wish to exit without changes.  Click
  185.          the 'CANCEL' gadget or the CLOSE gadget on the window.  This will
  186.          abort the operation and AddMenu will be unchanged. 
  187.  
  188. UPDATING ADDMENU ONCE RUNNING
  189. *****************************
  190. From CLI
  191. --------         
  192.          If AddMenu is already installed when launched again, then it will
  193.          send a message to the running version to update itself,  If no
  194.          script is supplied then it will update from the default file.
  195.          A different script can be supplied as the update, and because this
  196.          update can called from inside an addmenu script, this allows you to
  197.          change the entire menu, by calling a menu funtion.  This allows for 
  198.          an infinite number of available menu functions.  If a different 
  199.          script is supplied to the current one then it will totally replaced
  200.          in favour of the new script.  This new script could of course
  201.          have an option to return to the original or any number of other
  202.          scripts.
  203.         
  204. From Workbench 
  205. --------------
  206.          Double click the special AddMenu icon that appeared on the 
  207.          workbench window when AddMenu was launched.  A window will
  208.          open.  Enter a new script path and filename into the string
  209.          gadget and then press RETURN or click the OK gadget.  The 
  210.          menus will be updated if your new script was found and was
  211.          valid.  
  212.  
  213. TO REMOVE ADDMENU COMPLETELY
  214. ****************************
  215. From CLI
  216. --------
  217.          Launch AddMenu again with the -q switch. (SEE Usage Above)
  218.          This could also be done by placing an entry in your script
  219.          file so quitting could be done from the menus.
  220.  
  221. From Workbench  
  222. --------------
  223.          Double click the special icon that appeared on the Workbench
  224.          window when AddMenu was launched.  Click the REMOVE ALL Gadget.
  225.          AddMenu will be completely removed.
  226.  
  227. TO REMOVE THE TEMPORARY MENUS
  228. *****************************
  229. From CLI
  230. --------        
  231.          Not possible.
  232.  
  233. From Workbench only
  234. -------------------
  235.          Double click the special icon that appeared on the Workbench
  236.          window when AddMenu was launched.  Click the REMOVE TEMP Gadget.
  237.          All temporary menus will be removed.  They cannot be removed
  238.          individually.
  239.  
  240. THE SCRIPT FILE
  241. ***************
  242.  
  243.          The script file is a group of commands you would like in the
  244.          menu along with the text you want in the actual menu. 
  245.          The format of this script is important for the program to read 
  246.          it correctly.  If the number of menu items in a single script
  247.          overflows the screen height,  the menu strips will be made
  248.          wider and the items split into columns.  The maximum number
  249.          of menus items in a single script is 63, but due to a bug
  250.          in workbench.library this is not checked for, any extra menus
  251.          over this amount will be clipped, athough I dont forsee anyone
  252.          placing this many in a single script.  The structure of the
  253.          script file is as follows.
  254.  
  255. TEXT STRINGS
  256. ------------
  257.          The text strings are actually placed in the menu, and each one
  258.          must be before its command string.  The Text string must start 
  259.          and end with a plus (+) sign.
  260.  
  261. COMMAND STRINGS
  262. ---------------
  263.          The command strings are the strings that are sent to DOS when
  264.          a menu item is selected.  Each one must come directly after
  265.          its text string and start and end with an asterisk (*).  There
  266.          are now any number of commands allowed per text string,  
  267.          DO NOT USE THE 'RUN' COMMAND WITHIN A COMMAND STRING,  'RUN'
  268.          WILL BE ADDED TO THE FRONT OF YOUR STRING AUTOMATICALLY.
  269.  
  270. END OF FILE MARKER
  271. ------------------
  272.          The script file must end with a hash (#) sign on the beginning
  273.          of a new line.
  274.  
  275. COMMENTS
  276. --------
  277.          Comments are allowed in the script file but must follow certain
  278.          guidelines.  They are allowed on a line of their own or beside
  279.          a text string or command string. They must be outside the command
  280.          or text string characters.  The best way to ensure this is to
  281.          leave at least one space before the beginning of the comment after 
  282.          the rightmost plus (+) or asterisk (*) of each comment or text
  283.          string.  They MUST NOT use the plus (+) sign, the asterisk (*) 
  284.          or the hash (#) sign within the comment, as these three 
  285.          characters are used to specify the beginning and end of command,
  286.          texts strings or end of file.  Comment lines are completely 
  287.          optional, you do not have to have any at all.
  288.  
  289. EXAMPLE OF A VALID SCRIPT 
  290. -------------------------
  291. ;this is a valid comment
  292. this is a valid comment
  293.     this is still a valid comment
  294. +NEWSHELL+
  295. *c:newshell*
  296.                                 comments are allowed between menu strings
  297. +NoVirus+                       this is still a valid comment
  298. *dh0:novirus*                   notice the path to the above command 
  299.                                 how to execute a group of commands
  300.                                 by executing a standard batch file.
  301. +WordPerfect+
  302. *execute s:wpscript*            the wp script would contain commands needed 
  303. +XCOPY+                         to assign and run it
  304. *dh0:copiers/xcopy*             now we give option to quit addmenu
  305. +Quit Addmenu+
  306. *addmenu -q*
  307.                                 now we show how to change menus or update
  308. +PageStream+                    This example shows executing a number of        
  309. *assign fonts1: dh0:pagestream* commands after a single text string.
  310. *assign fonts2: dh0:pagestream*
  311. *assign pagestream: dh0:pagestream*
  312. *assign drivers: dh0:pagestream*
  313. *cd dh0:pagestream*
  314. *dh0:pagestream/pagestream*
  315. +Another Menu+                  the next following menu.
  316. *addmenu s:different.script*
  317. #
  318.          Notice the 'end of file' marker (#) on the end of the script.
  319.          Please send comments, bug reports etc to the address at the 
  320.          top of this file.
  321.  
  322.          Nic Wilson
  323.         AddMenu V1.50 (25th Apr 1991) by Nic Wilson
  324.         -------------------------------------------
  325.  
  326.                 Written totally in Assembler
  327.                 ----------------------------
  328.                  using Hisoft Devpac Amiga 
  329.                  -------------------------
  330.                   on an Amiga A3000 25mhz
  331.                   -----------------------
  332.  
  333.          Nic Wilson Software
  334.          138d South Street
  335.          Toowoomba Qld 4350
  336.          Australia  
  337.          Ph (076) 358384 Work or FAX
  338.             (076) 358539 After hours
  339.  
  340.          This program has been placed on Shareware for your enjoyment
  341.          You may distribute it freely as long as this document and the 
  342.          program remains unmodified, and accompanies the program.  
  343.          You may modify the script files as examples as long as you 
  344.          FULLY test them before distribution.
  345.  
  346.          If you like the program, a donation would be appreciated,
  347.          and the latest version of this and other programs will be sent
  348.          to you if requested.
  349.  
  350.          FUNCTION
  351.          --------
  352.          Add an infinite number of Menu Items to the Workbench Tools 
  353.          Menu in Kickstart V2.0 using script files.  Updating is 
  354.          possible from the menus, from CLI or from Workbench using
  355.          different script files.  Temporary menu items can also be 
  356.          added that stay in the menu strip after upating to new script.
  357.  
  358.          REQUIREMENTS
  359.          ------------
  360.          Any Amiga running V2.0 of Kickstart and Workbench including
  361.          the A3000. Tested on versions 36.141 to 37.74 Kickstart and
  362.          Workbench 36.77 to 37.33.
  363.  
  364.          HISTORY
  365.          -------
  366.          V1.0   Original release.
  367.          V1.1   Added ability to use different script name/path
  368.          V1.2   Added quit and update options
  369.          V1.3   Added ability to change scripts on update
  370.          V1.31  Optimised and fixed error msg for illegal use
  371.                 under kickstart V1.3. 
  372.                 Fully checked with 'Enforcer' for bugs.
  373.          V1.40  New temporary menus via workbench icon added
  374.                 and ability to update or remove from this icon.
  375.          V1.41  Stopped illegal devices, drawers or non-executables
  376.                 being added to the menu strip.  These will cause
  377.                 workbench screen to flash.
  378.                 Added switch for temporary menus, so you do not have
  379.                 to have the icon around if you do not use them.
  380.                 Added the ability to remove the temporary menus alone.  
  381.                 V1.42   Fixed bug.  If Temporary menus were removed, they would
  382.                 magically reappear when a script was changed.
  383.         V1.50   Fixed bug.  When updating to new script, old script memory 
  384.                 buffers were not being freed.   
  385.                 Added ability for each menu item to have more than one 
  386.                 executable(SEE 'COMMAND STRINGS' or 'EXAMPLE SCRIPT' BELOW).
  387. USAGE
  388. *****
  389.          IMPORTANT
  390.          ---------
  391.          DO NOT USE RUN OR RUNBACK, ADDMENU WILL RETURN THE CLI
  392.          TO YOU AND ALLOW IT TO CLOSE WHEN YOU GIVE AN ENDCLI.
  393.  
  394.          ADDMENU MUST RESIDE IN THE C: DIRECTORY.  IT WILL NOT WORK
  395.          IF IT IS IN ANOTHER DIRECTORY, EVEN IF IF IT HAS BEEN ADDED
  396.          TO THE PATH OR ASSIGNED!  ADDMENU WORKS IN RATHER A SPECIAL
  397.          WAY, IN ORDER TO ALLOW THE CLI WINDOW TO CLOSE AFTER LAUNCH
  398.          IT RELAUNCHES ITSELF AGAIN WITH SPECIAL CODE, THIS IS DONE
  399.          TO OVERCOME ALL THE NORMAL PROBLEMS ASSOCIATED WITH THIS.
  400.          YOU WILL NOTICE THAT SOME PROGRAMS LOSE THE PATH, STACK,
  401.          CURRENT DIRECTORY ETC, THIS IS ESPECIALLY TRUE OF PROGRAMS
  402.          WRITTEN IN C.  ADDMENU DOES NOT SUFFER FROM ANY OF THESE
  403.          PROBLEMS.  POPCLI TYPE PROGRAMS SUFFER BADLY FROM THIS, MY
  404.          AUTOCLI USES THIS SAME CODE AND SUFFERS NO PROBLEM.  IT IS
  405.          PUBLIC DOMAIN SO SEND S.S.A.E. FOR THE LATEST VERSION.  
  406.          
  407.          AddMenu [script] [switch]  
  408.  
  409.          Standard redirection of output is supported. 
  410.  
  411.          EG. Addmenu >nil: [script]  [switch] 
  412.         
  413. [switches]
  414.  
  415.   -q     AddMenu must already be running for this switch to be used.
  416.          This switch allows the currently running AddMenu to be removed. 
  417.          If AddMenu is not found running an error message will result.
  418.          If this switch is used then it must be the only parameter.
  419.          To remove from workbench see 'To Remove Addmenu Completely'
  420.          below.
  421.          
  422.   -t     Do not use temporary menus and do not place the icon on the
  423.          Workbench screen.       
  424.  
  425. [script] 
  426.          This is an optional parameter, and can be used when AddMenu is 
  427.          first launched or when updating.  By default it reads a script  
  428.          created by you, called 'addmenu.script'.  This file is expected 
  429.          to be in the S: directory , but if you wish to supply a
  430.          different path and name you can use the script parameter.  If 
  431.          this parameter is used you must supply the path to the file and 
  432.          its name.  There is an example file that accompanies this file 
  433.          to show you how to create it.  Below is an explanation of the 
  434.          script file.
  435.  
  436. SPECIAL CONDITIONS FOR LOADING
  437. ------------------------------
  438.          Workbench V2.0+ must already be running.  
  439.          LOADWB delay is not enough see below.
  440.          
  441. VERY IMPORTANT!!!!!!!!!!
  442. ------------------------
  443.          If being used from a startup-sequence the the command
  444.          must be placed after the LOADWB command, and a Wait 5 must
  445.          be placed in between them to give workbench time to come on
  446.          line.  The actual time to wait may need to be varied to suit
  447.          your system.  The delay option of LoadWB is not enough.
  448.          68030 machines can try wait times as low as 2.  If you have 
  449.          problems with intermittent gurus on boot then increase this wait.  
  450.          This wait does not have to delay the boot time of your machine.
  451.          if, every program in your startup-sequence that normally outputs
  452.          some sort of message to the window, is sent to NIL:, the initial 
  453.          CLI window will not open.  The first window you will see will be 
  454.          the Workbench window.  The wait will then happen in the background 
  455.          and the menus will be available in a few seconds.
  456.          
  457.          EXAMPLE
  458.                  LoadWb delay cleanup
  459.                  Wait 5
  460.                  AddMenu >nil:
  461.  
  462. TEMPORARY MENU ITEMS
  463. ********************
  464.  
  465.          This function will default to on unless the -t switch was 
  466.          used at launch. AddMenu will place a special icon on the 
  467.          workbench window.  If a program is dragged and dumped over 
  468.          this icon, that program will appear at the bottom of the 
  469.          menu strip.  The program itself will not move at all and 
  470.          doing this is quite safe. These temporary menus will survive 
  471.          an update that changes to a different script.  They will 
  472.          continue to appear on the bottom of whatever script you 
  473.          update with. Once added they can be removed without removing 
  474.          AddMenu completely by double clicking on the special icon and
  475.          selecting the 'REMOVE TEMP' gadget from the window.   
  476.          If any illegal device or non-executable file is dumped over
  477.          the icon the screen will flash and a beep sound will be heard, 
  478.          and it will not be added to the menu.
  479.         
  480. ADDMENU's SPECIAL ICON
  481. **********************
  482.          
  483.          This icon does not behave like a normal icon, it is a special
  484.          icon that allows manipulation of AddMenu from the workbench.
  485.          Double clicking the icon will open a window with five gadgets.  
  486.          These gadgets allow AddMenu to be removed, temporary menus 
  487.          removed, updating a script or to cancel the operation.  They 
  488.          are all explained in the relative sections below.  This icon 
  489.          has not been given any specific position on the workbench window.  
  490.          Workbench will choose the best position for the icon, it can 
  491.          of course be dragged to any place you wish.  I may add the abilty
  492.          to snapshot in a future version.
  493.          
  494.  
  495. CANCELLING THE WINDOW
  496. *********************
  497.          If you double clicked the special icon, the window opened, and
  498.          you changed your mind and wish to exit without changes.  Click
  499.          the 'CANCEL' gadget or the CLOSE gadget on the window.  This will
  500.          abort the operation and AddMenu will be unchanged. 
  501.  
  502. UPDATING ADDMENU ONCE RUNNING
  503. *****************************
  504. From CLI
  505. --------         
  506.          If AddMenu is already installed when launched again, then it will
  507.          send a message to the running version to update itself,  If no
  508.          script is supplied then it will update from the default file.
  509.          A different script can be supplied as the update, and because this
  510.          update can called from inside an addmenu script, this allows you to
  511.          change the entire menu, by calling a menu funtion.  This allows for 
  512.          an infinite number of available menu functions.  If a different 
  513.          script is supplied to the current one then it will totally replaced
  514.          in favour of the new script.  This new script could of course
  515.          have an option to return to the original or any number of other
  516.          scripts.
  517.         
  518. From Workbench 
  519. --------------
  520.          Double click the special AddMenu icon that appeared on the 
  521.          workbench window when AddMenu was launched.  A window will
  522.          open.  Enter a new script path and filename into the string
  523.          gadget and then press RETURN or click the OK gadget.  The 
  524.          menus will be updated if your new script was found and was
  525.          valid.  
  526.  
  527. TO REMOVE ADDMENU COMPLETELY
  528. ****************************
  529. From CLI
  530. --------
  531.          Launch AddMenu again with the -q switch. (SEE Usage Above)
  532.          This could also be done by placing an entry in your script
  533.          file so quitting could be done from the menus.
  534.  
  535. From Workbench  
  536. --------------
  537.          Double click the special icon that appeared on the Workbench
  538.          window when AddMenu was launched.  Click the REMOVE ALL Gadget.
  539.          AddMenu will be completely removed.
  540.  
  541. TO REMOVE THE TEMPORARY MENUS
  542. *****************************
  543. From CLI
  544. --------        
  545.          Not possible.
  546.  
  547. From Workbench only
  548. -------------------
  549.          Double click the special icon that appeared on the Workbench
  550.          window when AddMenu was launched.  Click the REMOVE TEMP Gadget.
  551.          All temporary menus will be removed.  They cannot be removed
  552.          individually.
  553.  
  554. THE SCRIPT FILE
  555. ***************
  556.  
  557.          The script file is a group of commands you would like in the
  558.          menu along with the text you want in the actual menu. 
  559.          The format of this script is important for the program to read 
  560.          it correctly.  If the number of menu items in a single script
  561.          overflows the screen height,  the menu strips will be made
  562.          wider and the items split into columns.  The maximum number
  563.          of menus items in a single script is 63, but due to a bug
  564.          in workbench.library this is not checked for, any extra menus
  565.          over this amount will be clipped, athough I dont forsee anyone
  566.          placing this many in a single script.  The structure of the
  567.          script file is as follows.
  568.  
  569. TEXT STRINGS
  570. ------------
  571.          The text strings are actually placed in the menu, and each one
  572.          must be before its command string.  The Text string must start 
  573.          and end with a plus (+) sign.
  574.  
  575. COMMAND STRINGS
  576. ---------------
  577.          The command strings are the strings that are sent to DOS when
  578.          a menu item is selected.  Each one must come directly after
  579.          its text string and start and end with an asterisk (*).  There
  580.          are now any number of commands allowed per text string,  
  581.          DO NOT USE THE 'RUN' COMMAND WITHIN A COMMAND STRING,  'RUN'
  582.          WILL BE ADDED TO THE FRONT OF YOUR STRING AUTOMATICALLY.
  583.  
  584. END OF FILE MARKER
  585. ------------------
  586.          The script file must end with a hash (#) sign on the beginning
  587.          of a new line.
  588.  
  589. COMMENTS
  590. --------
  591.          Comments are allowed in the script file but must follow certain
  592.          guidelines.  They are allowed on a line of their own or beside
  593.          a text string or command string. They must be outside the command
  594.          or text string characters.  The best way to ensure this is to
  595.          leave at least one space before the beginning of the comment after 
  596.          the rightmost plus (+) or asterisk (*) of each comment or text
  597.          string.  They MUST NOT use the plus (+) sign, the asterisk (*) 
  598.          or the hash (#) sign within the comment, as these three 
  599.          characters are used to specify the beginning and end of command,
  600.          texts strings or end of file.  Comment lines are completely 
  601.          optional, you do not have to have any at all.
  602.  
  603. EXAMPLE OF A VALID SCRIPT 
  604. -------------------------
  605. ;this is a valid comment
  606. this is a valid comment
  607.     this is still a valid comment
  608. +NEWSHELL+
  609. *c:newshell*
  610.                                 comments are allowed between menu strings
  611. +NoVirus+                       this is still a valid comment
  612. *dh0:novirus*                   notice the path to the above command 
  613.                                 how to execute a group of commands
  614.                                 by executing a standard batch file.
  615. +WordPerfect+
  616. *execute s:wpscript*            the wp script would contain commands needed 
  617. +XCOPY+                         to assign and run it
  618. *dh0:copiers/xcopy*             now we give option to quit addmenu
  619. +Quit Addmenu+
  620. *addmenu -q*
  621.                                 now we show how to change menus or update
  622. +PageStream+                    This example shows executing a number of        
  623. *assign fonts1: dh0:pagestream* commands after a single text string.
  624. *assign fonts2: dh0:pagestream*
  625. *assign pagestream: dh0:pagestream*
  626. *assign drivers: dh0:pagestream*
  627. *cd dh0:pagestream*
  628. *dh0:pagestream/pagestream*
  629. +Another Menu+                  the next following menu.
  630. *addmenu s:different.script*
  631. #
  632.          Notice the 'end of file' marker (#) on the end of the script.
  633.          Please send comments, bug reports etc to the address at the 
  634.          top of this file.
  635.  
  636.          Nic Wilson
  637.  
  638.  
  639.  
  640.         
  641.  
  642.  
  643.  
  644.         
  645.